エクセルで1:nマッチング
|
|
エクセルで1:nマッチング 紹介:
概要
二つのシートから、複数のセル(列)をマッチングのキー項目とし、
キーが一致、不一致の条件により、最大、三シートに出力する。
(出力側シートは同一の指定も可能)
通常、1件はマスター側、n件は発生データ側として使用。
特徴
・プログラミング(マクロ、関数の記述)は一切不要。
・入力シートのマッチングキーは、複数(最大255)指定可能。
・入力シートは、任意のシート指定が可能。
・マッチング範囲は、シートの任意行から任意行まで指定可能。
・入力シートの事前ソートは不要。
・入出力シートとも、1レコード複数行の構成が可能。
・出力シートの編集は、任意に可能。
(入力シートから編集、固定値出力、数値項目の集計、文字列結合等可能)
・入力シートの、レコード読み飛ばし機能あり。
・マッチングキーが存在しない場合、出現順によるマッチング可能。
(この場合、1:nのn件は任意に指定可能)
・出力シートへの、追加出力可能。(編集部のみクリア後、出力も可能)
・パラメタの保存、呼び出し、が可能。
・バッチ処理機能あり。(JCLエミュレータ(別ツール)が必要)
短所
・n:mマッチング機能なし。
・1レコードの構成行数は、全レコード同一であること。(マッチング指定範囲内)
・パラメタの指定が面倒である。
・入力シートに対して、ソートが実行される。
・処理速度が遅い。
・両入力シートに、キー項目が同数必要。(出現順を除く)
・パラメタチェックに手抜きがある。
・エラー処理を記述していない。(異常終了することがある)
・入力1件側を「マスタ」、n件側を「トランザクション」と勝手に呼び、
編集指定の時に”M”や”T”として、指定が必要である。
何に使えるの
例えば、
1、ホストから、伝票ヘッダー部と、明細行部を別々のシート(CSV等)として受取った。
これを、伝票№でマッチングさせ、ヘッド部情報も持った、明細行数分のリスト形式の表を作成したい。
2、あるシートを他人に提供し、項目(列)の追加をお願いした。
これを、オリジナルのシートに、取込みたい。
3、入力側n行からなるシートを、1行に編集したい、或いはその逆。
4、VLOOKUPの代用に使用する。